The Ubuntu install step told readers to install `openssl-tpm2-engine`
alongside step-agent, and the agent's PKCS#11 section opened by pointing
them at OpenSSL's `tpm2-openssl` provider / `libtpm2-tss`. Neither
reflects how the agent works.
`openssl-tpm2-engine` was never a step-agent package dependency -- the
string appears nowhere in the agent repo, in any ref. The Linux packages
declare PKCS#11 deps instead (deb: p11-kit, p11-kit-modules,
libengine-pkcs11-openssl; rpm: p11-kit, openssl-pkcs11), and all
agent-driven network auth moved to the built-in PKCS#11 server in
smallstep/agent#1056 and #1072.
- Ubuntu install: drop the package, matching the Debian step.
- Rename "OpenSSL and PKCS#11 support" to "PKCS#11 support" and lead with
the PKCS#11 server as the supported integration point.
- Document the auto-registered p11-kit module
(/etc/pkcs11/modules/step-agent.module, agent v0.67.4+), and note that
NSS apps still need the manual modutil step.
- Fix the socket path in all five places: it is
/run/step-agent/step-agent-pkcs11.sock, not
$XDG_RUNTIME_DIR/step-agent/step-agent-pkcs11.sock. The shipped unit
hard-sets RUNTIME_DIRECTORY=/run/step-agent, and step-agent.module,
wpa_supplicant-step-agent.conf, and pkg/pkcs11server/README.md all
agree.
- Update the two troubleshooting links to the renamed anchor.
Refs EFF-473
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012CzzkgZ1fM8x5AdmMFhE6v
Closes EFF-473.
Why
The Ubuntu install step told readers to
apt-get install step-agent openssl-tpm2-engine, and the agent's PKCS#11 section opened by pointing them at OpenSSL'stpm2-opensslprovider /libtpm2-tssas the integration path. Neither matches how the agent actually works.Verified against
origin/mainofsmallstep/agent:openssl-tpm2-enginewas never astep-agentpackage dependency.git log -Sacross all refs returns zero hits; the string appears nowhere in the agent repo. The docs line has been advisory since it was added in Nov 2024, and nothing ever consumed it..goreleaser.yml): deb →p11-kit,p11-kit-modules,libengine-pkcs11-openssl; rpm →p11-kit,openssl-pkcs11. Only Arch/Nix declaretpm2-openssl, which is the tpm2-software provider — a different project fromopenssl-tpm2-engine.What changed
openssl-tpm2-engine, making the step identical to Debian's.OpenSSL and PKCS#11 support→PKCS#11 support, and lead with the PKCS#11 server as the supported integration point for NetworkManager,wpa_supplicant, VPN clients, and browsers./etc/pkcs11/modules/step-agent.module(agent v0.67.4+), so p11-kit-aware software needs no manual setup. NSS apps (Chrome, Firefox) still need themodutilstep, which is called out explicitly./run/step-agent/step-agent-pkcs11.sock, not$XDG_RUNTIME_DIR/step-agent/step-agent-pkcs11.sock.extra/step-agent.servicehard-setsRUNTIME_DIRECTORY=/run/step-agent, andextra/step-agent.module,extra/wpa_supplicant-step-agent.conf, andpkg/pkcs11server/README.mdall independently agree. The old path was wrong even in the user-session fallback, which joins the filename directly to$XDG_RUNTIME_DIRwith nostep-agentsubdirectory.#pkcs11-supportanchor.No
manifest.jsonchange and no redirect needed — the page URL is unchanged, only an in-page anchor moved.Verification
grepconfirms zero remainingopenssl-tpm2-engine,openssl-and-pkcs11-support, or$XDG_RUNTIME_DIR/step-agentin any.mdx.github-slugger, the same sluggerrehype-sluguses on the site:PKCS#11 support→pkcs11-support. Cross-checked the rule against two existing working links. All 8 inbound anchors tosmallstep-agent.mdxresolve.Notes for the reviewer
docs/pkcs11-modutil-order(unmerged), which rewrites the same section to reorderexport P11_KIT_SERVER_ADDRESSbeforemodutil -add. I deliberately did not duplicate that fix — whichever lands second should resolve.Out of scope, worth follow-ups
packages.smallstep.com/containers/Dockerfile.ubuntu:13still runsapt-get -y install step-agent-plugin openssl-tpm2-engine step-cli— stale on two counts, since the current package name isstep-agent. The debian/fedora/centos sibling Dockerfiles don't install it.smallstep/openssl_tpm2_engine'sdebian/controlhas the wrongHomepage/Vcs-Git(points attpm2-software/tpm2-openssl, a different project).step-ca/,certificate-manager/), surfaced by the anchor check I ran. Untouched here.🤖 Generated with Claude Code
https://claude.ai/code/session_012CzzkgZ1fM8x5AdmMFhE6v